package cqrtplm.service;

import com.alibaba.fastjson.JSONObject;
import com.hustcad.plm.basicdataimport.dto.StdTypeDetailDTO;
import cqrtplm.dto.DrawingInfoDTO;
import cqrtplm.dto.OaUploadFileDTO;
import cqrtplm.dto.PartNumberDTO;
import cqrtplm.entity.RtOaFormMappingDO;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.math.BigInteger;
import java.util.List;
import java.util.Map;

public interface RtOaFormMappingService {

    void createRtOaFormMapping(RtOaFormMappingDO entity);

    void updateRtOaFormMapping(RtOaFormMappingDO entity);

    void deleteRtOaFormMapping(String type);

    RtOaFormMappingDO getRtOaFormMapping(BigInteger id);

    List<RtOaFormMappingDO> list();

    String SynchronousOA(JSONObject jsonObject) throws IOException;

    void rotaChangeNotice(MultipartFile file, String workFlowContainerId) throws IOException;

    List<DrawingInfoDTO> queryEBOMPartByNumber(PartNumberDTO partNumber);

    List<DrawingInfoDTO> queryPatternCodePartByNumber(PartNumberDTO partNumberDTO);

    void uploadFile(OaUploadFileDTO oaUploadFileDTOS);

    Map<BigInteger, StdTypeDetailDTO> getTypeData(List<String> typeNames);
}


